package com.tiancheng.onecode.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.tiancheng.onecode.entity.Platform;
import com.tiancheng.onecode.model.dto.PayPlatformDTO;
import com.tiancheng.onecode.model.request.admin.PlatformAddReq;
import com.tiancheng.onecode.model.request.admin.PlatformQueryReq;
import com.tiancheng.onecode.model.request.admin.PlatformUpdateReq;
import com.tiancheng.onecode.model.response.PageInfo;
import com.tiancheng.onecode.model.response.admin.PlatformQueryRes;

import java.util.List;
import java.util.Set;

/**
 * @Author: kellen
 * @Description: 商户service
 * @Date: create in 2024/12/9 18:21
 */
public interface IPlatformService extends IService<Platform> {
    /**
     * 分页查询
     *
     * @param params
     * @return
     */
    PageInfo<PlatformQueryRes> queryPage(PlatformQueryReq params);

    /**
     * 添加平台
     * @param params
     * @return
     */
    boolean add(PlatformAddReq params);

    /**
     * 修改平台信息
     * @param params
     * @return
     */
    boolean updatePlatform(PlatformUpdateReq params);

    /**
     * 查询明细
     * @param id
     * @return
     */
    PlatformQueryRes queryById(Long id);
    /**
     * 平台编码
     * @param platformCode 平台编码
     * @return
     */
    PlatformQueryRes queryByPlatformCode(String platformCode);

    /**
     * 平台编码
     * @param platformCode 平台编码
     * @return
     */
    List<PlatformQueryRes> queryByPlatformCodes(Set<String> platformCode);
    /**
     * 平台编码
     * @param platformCode 平台编码
     * @return
     */
    Platform getOneByPlatformCode(String platformCode);

    /**
     * 查询默认的一个
     *
     * @return
     */
    PayPlatformDTO getDefaultOne(String platformCode);
}
